Test and measurement instrument user interface with move mode

ABSTRACT

An apparatus, system, and method are described for providing an intuitive user interface on a test and measurement instrument. The test and measurement instrument can include container logic, which provides a work mode in which interactions with objects within a container on a display are allowed, and a move mode in which interactions with the objects within the container on the display are temporarily prevented. When in the move mode, the container logic can detect a dragging gesture associated with the container. In response to the dragging gesture, a preview container arrangement is provided overlaying the container arrangement. The container logic can detect a dropping indication, thereby causing the arrangement to snap to the preview container arrangement. Various other user interface controls are provided while in the move mode. In multi-user environments, customized container arrangements may be saved and then later recalled. Containers may be moved among multiple different displays.

BACKGROUND

Embodiments of the present invention relate to test and measurementinstruments, and more particularly, to a test and measurement instrumentincluding a user interface having a move mode.

Conventional test and measurement instruments, such as oscilloscopes,spectrum analyzers, and the like, offer few capabilities for adjustingthe user interface. For example, it is difficult or impossible torearrange or resize different parts of the user interface on thedisplay. Although current user interface paradigms exist in generalpurpose computers and mobile devices, such paradigms are not well suitedfor test and measurement instruments. The various windows on suchparadigms are quite often not related to each other. In contrast, thewindows or waveform containers of a test and measurement instrumentusually have some common relationship to the workspace. Moreover, testand measurement instruments are often located on benches that are notlevel with the end-user. Sometimes they are located high on a shelf. Inaddition, when taking measurement in the field, for example, the testand measurement instruments may be located in a vehicle or in otherdifficult settings.

Furthermore, the workspace on the display of a test and measurementinstrument can include a variety of user-settable criteria, dataobjects, trigger points, measurement information, and the like, which inthe case of a traditional user interface, can accidentally be erased oraltered when attempting to manipulate the windows or containers in theworkspace. Such accidental alterations to the workspace can result ininaccurate waveform measurements, lost time, or in some cases, evencatastrophic system failures due to misunderstandings or inexactanalysis of waveforms associated with the system being measured.

Accordingly, there remains a need for providing an improved userinterface designed particularly for test and measurement instruments.What is needed is an intuitive touch screen and/or mouse activatedinterface, which provides sufficient flexibility to arrange the layoutof the waveform views and related information in a manner that is easilycontrolled by the end-user, even in less-than-ideal environments, whileensuring that settings and other information are not unintentionallyerased or altered. Embodiments of the invention address these and otherlimitations in the prior art.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a simplified block diagram of one embodiment of atest and measurement instrument, including container logic, according toembodiments of the present invention.

FIGS. 2-8 illustrate a series of example displays including twocontainers of a user interface and associated operations by thecontainer logic, according to embodiments of the present invention.

FIGS. 9-18 illustrate a series of example displays including threecontainers of a user interface and associated operations by thecontainer logic, according to embodiments of the present invention.

The foregoing and other features and advantages of the inventiveconcepts will become more readily apparent from the following detaileddescription of the example embodiments, which proceeds with reference tothe accompanying drawings.

DETAILED DESCRIPTION

Reference will now be made in detail to embodiments of the presentinvention, examples of which are illustrated in the accompanyingdrawings. In the following detailed description, numerous specificdetails are set forth to enable a thorough understanding of theinventive concepts. It should be understood, however, that personshaving ordinary skill in the art may practice the inventive conceptswithout these specific details. In other instances, well-known methods,procedures, components, circuits, and networks have not been describedin detail so as not to unnecessarily obscure aspects of the embodiments.

It will be understood that, although the terms first, second, etc. maybe used herein to describe various elements, these elements should notbe limited by these terms. These terms are only used to distinguish oneelement from another. For example, a first container could be termed asecond container, and, similarly, a second container could be termed afirst container, without departing from the scope of the inventiveconcept.

The terminology used in the description of the various embodimentsherein is for the purpose of describing particular embodiments only andis not intended to be limiting of the inventive concepts. As used in thedescription and the appended claims, the singular forms “a”, “an” and“the” are intended to include the plural forms as well, unless thecontext clearly indicates otherwise. It will also be understood that theterm “and/or” as used herein refers to and encompasses any and allpossible combinations of one or more of the associated listed items. Itwill be further understood that the terms “comprises” and/or“comprising,” when used in this specification, specify the presence ofstated features, integers, steps, operations, elements, and/orcomponents, but do not preclude the presence or addition of one or moreother features, integers, steps, operations, elements, components,and/or groups thereof. The components and features of the drawings arenot necessarily drawn to scale.

Reference is made herein to a test and measurement instrument. The testand measurement instrument can implement or include various exampleembodiments of the present invention, which can be applied in a varietyof ways and to a variety of different applications, including forexample, the management of containers of a user interface. Thecontainers can include one or more waveforms associated with acquiredinput signal data. The acquired signals can be associated with, forexample, high-frequency wired or wireless communication systems,high-speed memory or other logic circuits, storage devices, networks,and so forth.

FIG. 1 illustrates a simplified block diagram 100 of one embodiment ofan apparatus or system, which may include an oscilloscope 105. Inalternative embodiments, the apparatus or system 100 may include aspectrum analyzer, a signal analyzer, some combination of the two, oranother type of comparable test and measurement instrument or device ora simulation of such system whose function(s) is (are) substantially thesame as the that of 100. For the sake of consistency and explanation,the test and measurement instrument will be referred to herein as anoscilloscope 105.

In accordance with embodiments of the present invention, theoscilloscope 105 may include container logic 140. The system 100 mayimplement or include various exemplary embodiments of the presentinvention, which may be applied in a variety of ways and in a variety ofdifferent applications, including for example, the management of anintuitive user interface 162, which facilitates moving windows orcontainers of objects (e.g., waveforms, trigger settings, measurementinformation, and the like) and other related information withoutaccidental alterations or corruption. The waveforms can be associatedwith, for example, high-frequency wired or wireless communicationsystems, high-speed memory or other logic circuits, storage devices,networks, simulated data, and so forth.

In one embodiment, the oscilloscope 105 can include, for example, one ormore input means (for example, terminals 110), acquisition means orcircuitry 115, storage medium (e.g., memory 125), a controller 135(including the container logic 140), and a display unit 160. Thecontroller 135, and more specifically the container logic 140, alone orin combination with other components of the oscilloscope 105, canimplement or cause to be implemented any of the various embodiments ofthe present invention.

The oscilloscope 105 may have one, two, four, or any number of channelsthat are connected to input means 110, suitable for use with variousembodiments as described herein. While components of the oscilloscope105 are shown to be directly coupled to each other, it should beunderstood that the oscilloscope 105 can include a variety of othercircuit or software components, inputs, outputs, and/or interfaces,which are not necessarily shown, but that are disposed between orotherwise associated with the illustrated components of oscilloscope105.

One or more actual or simulated, analog or digital waveforms orelectrical signals (collectively referred to as “signals”) can bereceived at the input means 110. Acquisition circuitry 115 may include,for example, known electronic circuitry and/or devices for at leastreceiving the signals from terminals 110, sampling the signals, andconverting the signals into digitized samples. The “acquired data” canthen be stored in the memory 125 as waveform data 130. As used herein,the term “acquired data” will be understood to include the reception ofan original input signal, sampling of such a signal, and the conversionof such a signal into digital samples or bits when the signal is ananalog signal.

The memory 125 may be any suitable recordable medium or storage mediumcapable of storing the acquired data, including the waveform data 130.The memory 125 can take the form of RAM, ROM, and/or cache memory. RAMmemory may be operable to store volatile data, such as the acquired dataand corresponding waveform data 130 generated by the acquisitioncircuitry 115. The memory 125 can store executable instructions that maybe accessed by the controller 135. Alternatively, the acquired data,corresponding waveform data 130, and/or executable instructions may bestored in a recordable medium separate from the memory 125.

The controller 135 can be operatively coupled to the memory 125 and thedisplay unit 160. The controller 135, and in particular the containerlogic 140, may be operable to access and process the data from thememory 125 in order to implement an intuitive user interface 162 withmoveable containers of information, as described in detail below, andall of the inventive methods and processes described herein, any ofwhich may be displayed by the display unit 160.

As indicated above, the controller 135 can include the container logic140. The container logic 140 can facilitate at least two distinct modes:a work mode 142 and a move mode 144. While in the work mode,interactions with work objects (e.g., waveforms, trigger settings,measurement information, and the like) are allowed. Conversely, while inthe move mode, interactions with the work objects within that particularcontainer (and/or adjacent or related containers) are temporarilyprevented or otherwise disabled or grayed out. In this manner,accidental alterations, measurement mistakes, corruption of waveformdata, and the like, are avoided. Moreover, while in the move mode,waveform containers (e.g., windows) can be easily arranged according tothe desires of the user, even if the oscilloscope is not ideallysituated in front of the user. These and other features and inventiveaspects are described in further detail below.

Components of the controller 135 and/or the container logic 140 may takethe form of, or be implemented using hardware, software, firmware, or byany combination thereof. For example, executable instructions forimplementing the inventive methods and processes described herein andfor otherwise controlling the oscilloscope 105 may be stored andaccessed from the memory 125. The controller 135 may be implemented as,for example, one or more programmable microprocessors, such as thosedesigned and developed by Intel Corporation; or multiple programmabledigital signal processors (which may be collectively referred to as“controller” or “controllers” herein). In yet another embodiment, whenthe controller 135 is implemented using multiple controllers, one may beused to control the acquisition and processing of input signals whilethe second may control the other operations of the oscilloscope 105. Theoscilloscope 105 may be further controlled using a Windows® OperatingSystem, designed and developed by Microsoft Corporation that is stored,for example, within associated memory 125 and accessed, for example, byone or more controllers 135.

In some embodiments, the controller 135 can exchange information relatedto the user interface 162 and associated containers with external device170 via a conductor such as a bus or a wire. The external device 170 caninclude, for example, a computer separate from the oscilloscope 105, oran external memory device (e.g., mass storage unit), among otherpossibilities. The controller 135 can transmit information about theuser interface 162 or waveform data 130 to the external device 170,and/or receive information from the external device 170 to enhance theuser interface 162 using the oscilloscope 105.

Moreover, the controller 135 can exchange information related to theuser interface 162 and associated containers with external display 180via a conductor such as a bus or a wire. The controller 135 can transmitinformation about the user interface 162 or waveform data 130 to theexternal display 180, as further described in detail below, and/orreceive information from the external display 180 to enhance the userinterface 162 using the oscilloscope 105.

FIGS. 2-8 illustrate a series of example displays including twocontainers (e.g., ‘A’ and ‘B’) of a user interface 162 and associatedoperations by the container logic 140 (of FIG. 1), according toembodiments of the present invention.

Referring to FIG. 2, the display unit 160 may include a display or userinterface 162. The user interface 162 may include various regions. Forexample, the user interface 162 may include a menu region 205 havingvarious drop-down menus with various options. The user interface 162 mayalso include a tool region 210 in which various frequently-used toolsand buttons are made available to the user, such as a cursor tool, atrigger setting tool, scaling controls, measurement controls, findtools, and the like. The user interface 162 may also include a trayregion 215 in which various other controls and information are madeavailable to the user, such as calibration controls, channel selection,run and stop controls, scope specific controls, and the like.

In particular, the user interface 162 can include waveform windows orcontainers, for example, labeled ‘A’ and ‘B.’ Such labels need notactually be present and are used here to facilitate this description. Ascan be seen, container ‘A’ includes two waveforms, i.e., waveforms 230and 235. Container ‘B’ includes one waveform, i.e., waveform 240. Itwill be understood that any number of waveforms can be displayed withineach container.

As can also be seen, trigger indicators 220 and 225 are present in eachof the waveform containers ‘A’ and B, respectively. It will beunderstood that other information can be present within the containers.For example, cursors, measurements, notations, graticules, waveformdata, and the like (not shown) can be included within one or more of thecontainers. Such objects can be manipulated when in a work mode (e.g.,142 of FIG. 1), but can be temporarily protected or grayed out during amove mode (e.g., 144 of FIG. 1), as further explained below.

In accordance with embodiments of the present invention, the containerlogic 140 (of FIG. 1) can provide the work mode 142 in whichinteractions with the objects (e.g., the waveforms, cursors,measurements, notations, graticules, and the like) within the containerson the display are allowed. The container logic 140 (of FIG. 1) can alsoprovide the move mode 144 in which interactions with the objects withinthe containers on the display are temporarily prevented.

In some embodiments, move action corners 245 and 250 can be disposed inlower right hand regions of the containers ‘A’ and B, respectively. Themove action corners can be displayed in the containers when in the workmode 142 and/or when in the move mode 144.

Reference is now made to FIG. 3. The containers ‘A’ and ‘B’ are part ofa container arrangement. As shown in FIG. 3, the containers can bearranged horizontally and stacked one atop another. In FIG. 3 and otherfigures, some of the objects described above are not shown for the sakeof simplifying the explanation. Such objects can actually be present,either in the foreground or the background (grayed out), within thevarious modes described herein.

The container logic 140 can detect a toggle indication by detecting aselection of the move action corner 250. The selection can be made bytouch 325, by a mouse (not shown), or by any other suitable selectionmeans. The container logic 140 can cause the user interface 162 and/orthe specific container ‘B’ to toggle between the work mode 142 and themove mode 144 in response to the toggle indication. It will beunderstood that in any and all of the embodiments discussed herein,selections and gestures in connection with the user interface 162 can bemade by touch, by mouse, or by any other suitable selection or gesturemeans. It will also be understood that the move mode 144 canalternatively or additionally be invoked from the menu 205, the toolregion 210, and/or the tray region 215.

When the move mode 144 is toggled on, various move mode controls appear.For example, when in the move mode, the container logic 140 can providea move control icon 305 within the container ‘B’ (i.e., the containerthat is toggled to the move mode). The move control icon 305 can includea graphical center portion 309, which can be a graphical target or othersuitable graphic disposed within a center region of the container. Thegraphical target shape is inviting and can persuade the user to want toclick or touch the target. The move control icon 305 can also includegraphical arrow portions 307. The operations of the center portion 309and the arrows 307 are described in further detail below.

Additional controls that appear while in the move mode can include oneor more scale handle icons 315 and one or more scale corner handles 310,which can be used to scale the various containers, as also described infurther detail below. By enacting the move mode, any container can bemoved, not just the container that invoked the move mode. In thisfashion, the workspace can be configured as desired with all of thecontainers. The various controls appear in the container that is infocus. In other words, while in FIG. 3 the various controls are shown incontainer ‘B,’ which is the container that invoked the move mode, and isthe container that is presently in focus—the user can also clickanywhere within container ‘A,’ which would bring that container intofocus, and can cause the various move mode and other controls to appearin that container and not in the container ‘B.’ The move controls appearin whichever movable container is in focus until move mode is toggledoff.

Further, the controls that appear can include one or more button icons(e.g., 320). In response to a selection of one of the buttons, thecontainer logic 140 can perform an action on the selected container orthe group of containers. For example, selection of a button 320 by theuser can cause the containers to be automatically arranged horizontally,vertically, or in some other pre-set arrangement. By way of anotherexample, selection of a button 320 may cause a grid to appear ordisappear.

By way of yet another example, selection of one of the buttons 320 canindicate a desire to save a container arrangement, which can cause thecontainer logic 140 to save the container arrangement for later recall.This is particularly useful in multi-user environments where multipleusers share a single oscilloscope. The user can indicate their desire torecall a particular container arrangement by selecting a recall button320, thereby causing the container logic 140 to recall the savedcontainer arrangement. It will be understood that the operationsdescribed herein in connection with the one or more buttons 320 can alsobe invoked from the menu 205, the tool region 210, and/or the trayregion 215. It is advantageous and convenient for the user, however, toprovide tools and options within the container particularly when theoptions are specific to that container or to a given mode.

Referring now to FIG. 4, the containers ‘A’ and ‘B’ are part of anarrangement of containers. When in the move mode 144, interactions withwork objects in the container ‘B’ are prevented or otherwise grayed out,and the container logic 140 can detect a dragging gesture 405, forexample, associated with the container ‘B.’ For example, the user canpress their finger 325 on the center portion 309 of the move controlicon 305, and make a dragging gesture.

Referring now to FIG. 5, in response to the dragging gesture 405, thecontainer logic 140 can provide a preview container arrangement (e.g.,including preview container 505 and preview container 510) overlayingthe current container arrangement. The container logic 140 provides aneducated guess as to how the user intends to re-arrange the containers.In this example, both of the preview containers 505 and 510 are resizedrelative to the current containers ‘A’ and ‘B.’ Alternatively, thecontainer ‘B’ (i.e., the container being dragged) can retain its currentsize and shape, and any other containers (e.g., container ‘A’) can beresized and/or repositioned in the preview to accommodate the currentsize and shape of container ‘B.’

As mentioned above, any selections or other such gestures describedherein can also be made using a mouse or other suitable means. If thedisplay is a touch-sensitive display, then the dragging gesture can bedetected from an end-user on the touch-sensitive display. Alternatively,or in addition, the dragging gesture can also be detected as a mousegesture from the end-user. For the sake of simplicity, the gestures willgenerally be described herein with reference to the finger 325 and thedisplay assumed to be a touch-sensitive display.

Referring now to FIGS. 5 and 6, the container logic 140 can detect adropping indication or gesture. For example, the finger 325 can belifted from the display (or the mouse un-clicked). In response to thedropping indication, the container arrangement can be snapped to thepreview container arrangement. In other words, the container ‘B’ canautomatically take the size, shape and location of the preview container510 and the container ‘A’ can automatically take the size, shape andlocation of the preview container 505.

Still in the move mode 144, the user can again move the container ‘B’ toanother location by manipulating the move action icon 305. In addition,the user can operate other move mode controls. Otherwise, if the user issatisfied with the new container arrangement, the user can toggle out ofmove mode by selecting or pressing the move action corner 250.

Referring now to FIG. 7, and assuming that the user has not toggled outof the move mode 144, the container logic 140 can detect a selection anddragging gesture 705 of one of the scale corner handles 310. In responseto the selection and the dragging gesture, both of the containers ‘A’and ‘B’ can be graphically scaled.

FIG. 8 shows how the containers ‘A’ and ‘B’ would appear after theselection and the dragging gesture of the scale corner handle 310. Inother words, both the container ‘B’ and the adjacent container ‘A’ canbe simultaneously scaled in response to the selection and the dragginggesture using the scale corner handle 310. All containers are scalableto any suitable size, which allows for flexibility in the layout and theworkspace. The layouts need not be fixed to particular options or rigidrules.

The scale corner handles 310 and the scale handle icons 315 can be usedin a similar way. For example, the scale corner handles 310 or the scalehandle icons 315 can be selected and dragged in any direction (e.g., up,down, left, right, diagonal) in order to resize the associatedcontainer(s). The adjacent containers can be automatically andsimultaneously resized relative to the dragging of the scale cornerhandle(s) 310 or the scale handle icon(s) 315 of the presently selectedcontainer. The lower right hand scale corner handle 310 can double asthe move action corner 250. In other words, the lower right hand cornercan function as the move action corner 250, the scale corner handle 310,or both.

FIGS. 9-18 illustrate a series of example displays including threecontainers (e.g., ‘A,’ ‘B,’ and ‘C’) of a user interface 162 andassociated operations by the container logic 140 (of FIG. 1), accordingto embodiments of the present invention. Some of the components andaspects of FIGS. 9-18 are present in FIGS. 2-8 as explained above, andfor the sake of brevity, a detailed description of these is notrepeated. The primary difference is the presence of three containersinstead of two containers. It will be understood that any number ofcontainers can be present and still fall within the inventive aspectsdisclosed herein.

Referring to FIG. 9, the user interface 162 can include waveform windowsor containers, for example, labeled ‘A,’ and ‘B,’ and ‘C.’ Such labelsneed not actually be present and are used here to facilitate thisdescription. As can be seen, each container can include one or morewaveforms.

In accordance with embodiments of the present invention, the containerlogic 140 (of FIG. 1) can provide the work mode 142 in whichinteractions with the objects (e.g., the waveforms, cursors,measurements, notations, graticules, and the like) within the containerson the display are allowed. The container logic 140 can also provide themove mode 144 in which interactions with the work objects (i.e., thenon-move-mode objects) within the containers on the display aretemporarily prevented.

In some embodiments, move action corners (e.g., 250) can be disposed inlower right hand regions of the containers ‘A’ and ‘B,’ and ‘C’respectively. The move action corners can be displayed in the containerswhen in the work mode 142 and/or when in the move mode 144.

Reference is now made to FIG. 10. The containers ‘A,’ ‘B,’ and ‘C’ arepart of a container arrangement. As shown in FIG. 10, the containers canbe arranged horizontally and stacked one atop another. The containerlogic 140 can detect a toggle indication by detecting a selection of themove action corner 250. The container logic 140 can cause the userinterface 162 and/or the selected container ‘C’ to toggle between thework mode 142 and the move mode 144 in response to the toggleindication. It will be understood that the move mode 144 canalternatively or additionally be invoked from the menu 205, the toolregion 210, and/or the tray region 215.

When the move mode 144 is toggled on, various controls appear within thecontainer. For example, when in the move mode, the container logic 140can provide a move control icon 305 within the container ‘C’ (i.e., thecontainer that is toggled to the move mode). The move control icon 305can include a graphical center portion 309, which can be a graphicaltarget or other suitable graphic disposed within a center region of thecontainer. The move control icon 305 can also include graphical arrowportions 307. The operations of the center portion 309 and the arrows307 are described in further detail below.

Additional controls that appear while in the move mode can include oneor more scale handle icons 315 and one or more scale corner handles 310,which can be used to scale the various containers, as also described infurther detail below. As mentioned above, by enacting the move mode, anycontainer can be moved, not just the container that invoked the movemode. In this fashion, the workspace can be configured as desired withall of the containers. The various controls appear in the container thatis in focus. In other words, while in FIG. 3 the various controls areshown in container ‘C,’ which is the container that invoked the movemode, and is the container that is presently in focus—the user can alsoclick anywhere within container ‘A’ or ‘B,’ which would bring thatcontainer into focus, and can cause the various move mode and othercontrols to appear in that container and not in the container ‘C.’ Themove controls appear in whichever movable container is in focus untilmove mode is toggled off.

Further, the controls that appear can include one or more button icons(e.g., 320). In response to a selection of one of the buttons, thecontainer logic 140 can perform actions on the selected container or thegroup of containers such as the actions and operations described above.

Referring now to FIG. 11, the containers ‘A,’ ‘B,’ and ‘C’ are part ofan arrangement of containers. When in the move mode 144, interactionswith work objects in the container ‘C’ (and optionally the othercontainers as well) are prevented or otherwise grayed out, and thecontainer logic 140 can detect a dragging gesture 1105, for example,associated with the container ‘C.’ For example, the user can press theirfinger 325 on the center portion 309 of the move control icon 305, andmake a dragging gesture.

Referring now to FIG. 12, in response to the dragging gesture 1105, thecontainer logic 140 can provide a preview container arrangement (e.g.,including preview container 1205, preview container 1210, and previewcontainer 1215) overlaying the current container arrangement. Thecontainer logic 140 provides an educated guess as to how the userintends to re-arrange the containers. In this example, all of thepreview containers 1205, 1210, and 1215 are resized relative to thecurrent containers ‘A,’ ‘B,’ and ‘C.’ Alternatively, the container ‘C’(i.e., the container being dragged) can retain its current size andshape, and any other containers (e.g., containers ‘A’ and ‘B’) can beresized and/or repositioned in the preview to accommodate the currentsize and shape of container ‘C.’

Referring now to FIGS. 12 and 13, the container logic 140 can detect adropping indication or gesture. For example, the finger 325 can belifted from the display (or the mouse un-clicked). In response to thedropping indication, the container arrangement can be snapped to thepreview container arrangement. In other words, the container ‘C’ canautomatically take the size, shape and location of the preview container1205, the container ‘A’ can automatically take the size, shape andlocation of the preview container 1210, and the container ‘B’ canautomatically take the size, shape and location of the preview container1215.

Still in the move mode 144, the user can again move the container ‘C’ toanother location by manipulating the move action icon 305. In addition,the user can operate other move mode controls. Otherwise, if the user issatisfied with the new container arrangement, the user can toggle out ofmove mode by selecting or pressing the move action corner 250.

Referring now to FIG. 14, and assuming that the user has not toggled outof the move mode 144, the container logic 140 can detect a selection anddragging gesture 1405 of one of the scale handle icons 315. In responseto the selection and the dragging gesture, both of the containers ‘C’and ‘A’ can be graphically scaled simultaneously. Because the container‘B’ is not an adjacent container, the size of the container ‘B’ canremain the same. As mentioned above, all containers are scalable to anysuitable size, which allows for flexibility in the layout and theworkspace. The layouts need not be fixed to particular options or rigidrules.

FIG. 15 shows how the containers ‘A,’ ‘B,’ and ‘C’ would appear afterthe selection and the dragging gesture of the scale handle icon 315. Inother words, both the container ‘C’ and the adjacent container ‘A’ canbe simultaneously scaled in response to the selection and the dragginggesture using the scale handle icon 315.

Referring now to FIG. 16, the containers ‘A,’ ‘B,’ and ‘C’ are part ofan arrangement of containers in accordance with another embodiment. Whenin the move mode 144, the container logic 140 can detect a dragginggesture 1605 in a generally upward direction, for example, associatedwith the container ‘C.’ For example, the user can press their finger 325on the center portion 309 of the move control icon 305, and make adragging gesture substantially perpendicularly toward an adjacentcontainer.

Referring now to FIGS. 16 and 17, in response to the dragging gesture1605, the container logic 140 can provide a preview containerarrangement (e.g., including preview container 1705, preview container1710, and preview container 1715) overlaying the current containerarrangement. The container logic 140 provides an educated guess as tohow the user intends to re-arrange the containers. In this example, allof the preview containers 1705, 1710, and 1715 retain their current sizerelative to the current containers ‘A,’ ‘B,’ and ‘C.’ Alternatively, thecontainer ‘C’ (i.e., the container being dragged) can retain its currentsize and shape, and any other containers (e.g., containers ‘A’ and ‘B’)can be resized and/or repositioned in the preview to accommodate thecurrent size and shape of container ‘C.’

In an alternative embodiment, the container logic 140 can detect aselection of the graphical arrow portion 307, which can immediatelycause the container ‘C’ to swap with an adjacent container ‘B’ inresponse to the selection. In this manner, the dragging gesture need notbe employed. It will be understood that the various arrow portions 307can be used to swap with other adjacent containers, whether they belocated above, beneath, to the left of, or to the right of, thecurrently selected container.

Referring now to FIGS. 17 and 18, the container logic 140 can detect adropping indication or gesture. For example, the finger 325 can belifted from the display (or the mouse un-clicked). In response to thedropping indication, the container arrangement can be snapped to thepreview container arrangement. In other words, the container ‘C’ canautomatically take the size, shape and location of the preview container1710, the container ‘A’ can automatically take the size, shape andlocation of the preview container 1705, and the container ‘B’ canautomatically take the size, shape and location of the preview container1715.

Still in the move mode 144, the user can again move the container ‘C’ toanother location by manipulating the move action icon 305. In addition,the user can operate other move mode controls. Otherwise, if the user issatisfied with the new container arrangement, the user can toggle out ofmove mode by selecting or pressing the move action corner 250.

As mentioned above, the scale corner handles 310 can be used in asimilar way as the scale handle icons 315. For example, the scale cornerhandles 310 can be selected and dragged in any direction (e.g., up,down, left, right, diagonal) in order to resize the associatedcontainer(s). Any adjacent container can be automatically andsimultaneously resized relative to the dragging of the scale cornerhandle(s) 310 of the presently selected container. The lower right handscale corner handle 310 can double as the move action corner 250. Inother words, the lower right hand corner can function as the move actioncorner 250, a scale corner handle 310, or both.

Although the example embodiments described above and illustrated showtechniques for intuitively providing a user interface with dockedwindows or containers, the inventive techniques are also applicable tocases where the containers are undocked from the workspace. Thecontainer logic 140 can detect an undock indication, through theselection of a button within the container, from the menu region, or thelike. The containers can then be undocked in response to the undockindication.

The container logic 140 can detect a selection and dragging gestureassociated with the undocked container. In response to the selection andthe dragging gesture, the undocked container can be moved to theexternal display (e.g., external display 180 of FIG. 1) or otherwise toa different location on the display unit 160 that is integrated with thetest and measurement instrument 105.

The embodiments described herein allow the user to easily adjust allaspects of the size and placement of the containers. The user canarrange the containers according to their personal preferences for howthey view their acquired signals and associated information based ontheir tasks at hand. Because there may be multiple layouts that the usermay want to use dependent upon a particular task, or because of multipleusers sharing the oscilloscope, the capability is provided to savelayouts, which allow users to quickly and easily arrange the display asdesired.

It will be understood that the determinations and operations illustratedin the diagrams described above need not occur in the specific order asdescribed, but rather, these determinations and operations can be madeat different times. It will also be understood that the steps describedin these techniques need not necessarily occur in the order asillustrated or described.

Although the foregoing discussion has focused on particular embodiments,other configurations are contemplated. The following discussion isintended to provide a brief, general description of a suitable machineor machines in which certain aspects of the inventive concept can beimplemented. Typically, the machine or machines include a system bus towhich is attached processors, memory, e.g., random access memory (RAM),read-only memory (ROM), or other state preserving medium, storagedevices, a video interface, and input/output interface ports. Themachine or machines can be controlled, at least in part, by input fromconventional input devices, such as keyboards, mice, etc., as well as bydirectives received from another machine, interaction with a virtualreality (VR) environment, biometric feedback, or other input signal. Asused herein, the term “machine” is intended to broadly encompass asingle machine, a virtual machine, or a system of communicativelycoupled machines, virtual machines, or devices operating together.Exemplary machines include computing devices such as personal computers,workstations, servers, portable computers, handheld devices, telephones,tablets, etc., as well as transportation devices, such as private orpublic transportation, e.g., automobiles, trains, cabs, etc.

The machine or machines can include embedded controllers, such asprogrammable or non-programmable logic devices or arrays, ApplicationSpecific Integrated Circuits (ASICs), embedded computers, smart cards,and the like. The machine or machines can utilize one or moreconnections to one or more remote machines, such as through a networkinterface, modem, or other communicative coupling. Machines can beinterconnected by way of a physical and/or logical network, such as anintranet, the Internet, local area networks, wide area networks, etc.One skilled in the art will appreciate that network communication canutilize various wired and/or wireless short range or long range carriersand protocols, including radio frequency (RF), satellite, microwave,Institute of Electrical and Electronics Engineers (IEEE) 545.11,Bluetooth®, optical, infrared, cable, laser, etc.

Embodiments of the inventive concept can be described by reference to orin conjunction with associated data including functions, procedures,data structures, application programs, etc. which when accessed by amachine results in the machine performing tasks or defining abstractdata types or low-level hardware contexts. Associated data can be storedin, for example, the volatile and/or non-volatile memory, e.g., RAM,ROM, etc., or in other storage devices and their associated storagemedia, including hard-drives, floppy-disks, optical storage, tapes,flash memory, memory sticks, digital video disks, biological storage,etc. Associated data can be delivered over transmission environments,including the physical and/or logical network, in the form of packets,serial data, parallel data, propagated signals, etc., and can be used ina compressed or encrypted format. Associated data can be used in adistributed environment, and stored locally and/or remotely for machineaccess. Embodiments of the inventive concept may include anon-transitory machine-readable medium comprising instructionsexecutable by one or more processors, the instructions comprisinginstructions to perform the elements of the inventive concept asdescribed herein.

Other similar or non-similar modifications can be made without deviatingfrom the intended scope of the inventive concept. Accordingly, theinventive concept is not limited except as by the appended claims.

1. A method for providing a user interface on a test and measurement instrument, the method comprising: providing a work mode in which interactions with objects within a container on a display are allowed; and providing a move mode in which interactions with the objects within the container on the display are temporarily prevented.
 2. The method of claim 1, wherein the container is part of a container arrangement, the method further comprising: when in the move mode, detecting a dragging gesture associated with the container; and in response to the dragging gesture, providing a preview container arrangement overlaying the container arrangement.
 3. The method of claim 2, further comprising: detecting a dropping indication; and when in the move mode, snapping the container arrangement to the preview container arrangement in response to the dropping indication.
 4. The method of claim 2, wherein the display is a touch-sensitive display, and detecting the dragging gesture further comprises detecting, from an end-user, the dragging gesture on the touch-sensitive display.
 5. The method of claim 2, wherein detecting the dragging gesture further comprises detecting a mouse gesture from an end-user.
 6. The method of claim 2, further comprising: when in the move mode, providing a move control icon within the container; and wherein detecting the dragging gesture includes detecting a manipulation of the move control icon.
 7. The method of claim 6, wherein the move control icon further comprises a graphical center portion and graphical arrow portions, the method further comprising: detecting a selection of the graphical arrow portions; swapping the container with another adjacent container in response to the selection of the graphical arrow portions; detecting a selection and dragging gesture of the graphical center portion; and moving the container to a different container location in response to the selection and the dragging gesture of the graphical center portion.
 8. The method of claim 7, wherein the graphical center portion is a graphical target, and the method further comprises providing the graphical target in a center region of the container.
 9. The method of claim 1, further comprising: detecting a toggle indication; and toggling between the work mode and the move mode in response to the toggle indication.
 10. The method of claim 9, further comprising: when in the move mode, providing a move action corner within the container; and wherein receiving the toggle indication further comprises detecting a selection of the move action corner.
 11. The method of claim 10, further comprising: displaying the move action corner in a lower right hand region of the container.
 12. The method of claim 1, further comprising: when in the move mode, providing one or more scale handle icons within the container; detecting a selection and dragging gesture of the one or more scale handle icons; and in response to the selection and the dragging gesture, graphically scaling the container.
 13. The method of claim 12, wherein: the container is referred to as a first container; and graphically scaling the container includes simultaneously scaling the first container and a second container that is adjacent to the first container.
 14. The method of claim 1, further comprising: when in the move mode, providing one or more button icons within the container; detecting a selection of the one or more button icons; and in response to the button selection, performing an action on the container.
 15. The method of claim 1, wherein the container is referred to as a first container, the method further comprising: saving a container arrangement in response to a save indication, the container arrangement including at least the first container and a second container; and recalling the container arrangement in response to a recall indication.
 16. The method of claim 1, further comprising: detecting an undock indication; and undocking the container in response to the undock indication.
 17. The method of claim 16, wherein the display is referred to as a first display, the first display is integrated within the test and measurement instrument, the method further comprising: detecting a selection and dragging gesture associated with the undocked container; and moving the undocked container to a second display that is external to the test and measurement instrument in response to the selection and the dragging gesture.
 18. A test and measurement instrument, comprising: a display; one or more input terminals configured to receive one or more input signals; acquisition circuitry configured to digitize the one or more input signals; a memory configured to store waveform data associated with the digitized one or more input signals; and a controller including container logic configured to manage one or more containers of a user interface on the display, the one or more containers including one or more waveforms associated with the waveform data, wherein the container logic is configured to provide a work mode in which interactions with the one or more waveforms within the one or more containers on the display are allowed, and to provide a move mode in which interactions with the one or more waveforms within the one or more containers on the display are temporarily prevented.
 19. The test and measurement instrument of claim 18, wherein: the one or more containers are part of a container arrangement; the container logic is further configured to detect a dragging gesture associated with the one or more containers; and in response to detecting the dragging gesture, the container logic is further configured to provide a preview container arrangement overlaying the container arrangement.
 20. The test and measurement instrument of claim 19, wherein: the container logic is further configured to detect a dropping indication; and in response to the dropping indication, the container logic is further configured to snap the container arrangement to the preview container arrangement.
 21. The test and measurement instrument of claim 19, wherein: the display is a touch-sensitive display; and the container logic is further configured to detect, from an end-user, the dragging gesture on the touch-sensitive display.
 22. The test and measurement instrument of claim 19, further comprising: a move control icon on the display including a graphical center portion and graphical arrow portions, wherein the container logic is configured to detect a selection of the graphical arrow portions, and to swap the one or more containers with another adjacent container in response thereto; and the container logic is configured to detect a selection and dragging gesture of the graphical center portion, and to move the one or more containers to a different container location in response thereto.
 23. The test and measurement instrument of claim 22, wherein the graphical center portion is a graphical target, and the container logic is configured to cause the graphical target to be displayed in a center region of the one or more containers.
 24. The test and measurement instrument of claim 18, further comprising: a move action corner displayed in a lower right hand region of the one or more containers, wherein the container logic is configured to receive a toggle indication by detecting a selection of the move action corner.
 25. The test and measurement instrument of claim 18, further comprising: one or more scale handle icons disposed within the one or more containers, wherein the container logic is configured to detect a selection and dragging gesture of the one or more scale handle icons and to graphically scale the one or more containers in response thereto.
 26. The test and measurement instrument of claim 18, further comprising: one or more buttons disposed within the one or more containers, wherein the container logic is configured to detect a selection of the one or more button icons, and to perform an action on the one or more containers in response thereto.
 27. The test and measurement instrument of claim 19, wherein: the one or more containers includes at least a first container and a second container, and the container arrangement includes at least the first container and the second container; the container logic is configured to save the container arrangement in response to a save indication; and the container logic is configured to recall the container arrangement in response to a recall indication.
 28. The test and measurement instrument of claim 18, wherein: the display is referred to as a first display; the first display is integrated within the test and measurement instrument; the container logic is configured to detect an undock indication and to undock the one or more containers in response thereto; the container logic is configured to detect a selection and dragging gesture associated with the undocked container; and the container logic is configured to move the undocked container to a second display that is external to the test and measurement instrument in response thereto.
 29. A non-transitory machine-readable medium comprising instructions executable by one or more processors, the instructions comprising instructions to perform the elements of claim
 1. 